# 运算符

"""
Python语言支持以下类型的运算符:

算术运算符
比较(关系)运算符
赋值运算符
逻辑运算符
位运算符
成员运算符
身份运算符
运算符优先级

"""

# 1.算术运算符
""""
+ 加
- 减
* 乘
/ 除（浮点数）
// 取整除
%  取模（取余）
** 幂
"""

a = 10;
b = 3;
c = 0;

d = a + b;
e = a - b;
f = a * b
g = a / b
h = a // b
i = a ** b
j = a % b;

print(d)
print(e)
print(f)
print(g)
print(h)
print(i)
print(j)

# 2.比较运算符 返回值为bool类型
"""
> 大于
< 小于
== 等于
!= 不等于
>= 大于等于
<= 小于等于
"""

k = 10

if (a > b):
    print("a>b")
else:
    print("a<=b")

if (k == 10):
    print("a==k")
else:
    print("a!=k")

# 3.赋值运算符
"""
=  赋值
+= 加法赋值  a+=b等效于a=a+b
-= 简法复制  a-=b等效于a=a-b
*= 乘法赋值  a*=b等效于a=a*b
/= 除法赋值  a/=b等效于a=a/b
%= 取模赋值  a%=b等效于a=a%b
**= 幂赋值  a**=b等效于a=a*b
//= 取整除赋值 a//=b等效于a=a//b
"""

# 4.位运算符
"""
把数字看做二进制来计算

&  按位 与   运算符    参与运算的两个值，如果两个相应位都位1，则该位的结果为1，否则为0
|  按位 或   运算符    只要对应的两个二进位有一个为1时，结果位就为1
^  按位 异或  运算符   当两个对应的二进位相异时，结果为1
~  按位 取反  运算符   对每个二进制位取反，即把1变成0,0变成1；表达式 ~n=-(n+1)
<<  左移动运算符   运算数的各二进位向左移若干位，高位丢弃，低位补0
>>  右移动运算符   运算数的各二进位向右移若干位
 
"""

# 5.逻辑运算符
"""
and    布尔与
or     布尔或
not    布尔非
"""

# 6.成员运算符
"""
测试实例中包含了一系列的成员，包括字符串，列表或元组

in          如果在指定的序列中 找到 值，则返回True,否则返回False
not in      如果在指定的序列中 没有找到 值，则返回True,否则返回False
"""

# 7.身份运算符
"""
身份运算符用于比较两个对象的存储单元

is          is是判断两个标识符是不是引用自 一个 对象，是则返回True，否则返回false
is not      is not 是判断两个标识符是不是引自 不同 对象，是则返回True，否则返回false
"""


# 8.Python运算符优先级
"""
以下从最高级到最低级的所有运算符：

**         指数
~ +-       按位翻转，一元加号和减号
* / % //   乘、除、取余、取整数
+ -        加、减
>> <<      右移、左移运算符
&          按位与
^ |        异或、非
<= < >= >
< > == !=
= %= /= //= -=  += *= **=
is is not
in not in
not and or


"""